第四部分 第二章 3.DML与DQL
条评论2.3 DML
2.3.1 添加数据:
语法:
1
insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);
注意:
- 列名和值要一一对应。
- 如果表名后,不定义列名,则默认给所有列添加值
insert into 表名 values(值1,值2,…值n); - 除了数字类型,其他类型需要使用引号(单双都可以)引起来
2.3.2 删除数据:
语法:
1
delete from 表名 [where 条件]
注意:
- 如果不加条件,则删除表中所有记录。
- 如果要删除所有记录
- delete from 表名; – 不推荐使用。有多少条记录就会执行多少次删除操作
- TRUNCATE TABLE 表名; – 推荐使用,效率更高 先删除表,然后再创建一张一样的表。
2.3.3 修改数据:
- 语法:
1 | update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件]; |
注意:
- 如果不加任何条件,则会将表中所有记录全部修改。
2.4 DQL
2.4.1 语法
查询表中的数据
1 | select * from 表名; |
select
字段列表
from
表名列表
where
条件列表
group by
分组字段
having
分组之后的条件
order by
排序
limit
分页限定
2.4.2 基础查询
多个字段的查询
1
select 字段名1,字段名2... from 表名;
- 注意:
- 如果查询所有字段,则可以使用*来替代字段列表。
- 注意:
去除重复:
- distinct
计算列
- 一般可以使用四则运算计算一些列的值。(一般只会进行数值型的计算)
- ifnull(表达式1,表达式2):null参与的运算,计算结果都为null
- 表达式1:哪个字段需要判断是否为null
- 如果该字段为null后的替换值。
起别名:
- as:as也可以省略
2.4.3 条件查询
- where子句后跟条件4
- 运算符
- > 、< 、<= 、>= 、= 、<>
- BETWEEN…AND
- IN( 集合)
- LIKE:模糊查询
- 占位符:
- _:单个任意字符
- %:多个任意字符
- 占位符:
- IS NULL
- and 或 &&
- or 或 ||
- not 或 !
例子
– 查询年龄大于20岁
1 | SELECT * FROM student WHERE age > 20; |
– 查询年龄等于20岁
1 | SELECT * FROM student WHERE age = 20; |
– 查询年龄不等于20岁
1 | SELECT * FROM student WHERE age != 20; |
– 查询年龄大于等于20 小于等于30
1 | SELECT * FROM student WHERE age >= 20 && age <=30; |
– 查询年龄22岁,18岁,25岁的信息
1 | SELECT * FROM student WHERE age = 22 OR age = 18 OR age = 25 |
– 查询英语成绩为null
1 | SELECT * FROM student WHERE english = NULL; |
– 查询英语成绩不为null
1 | SELECT * FROM student WHERE english IS NOT NULL; |
– 查询姓马的有哪些? like
1 | SELECT * FROM student WHERE NAME LIKE '马%'; |
– 查询姓名第二个字是化的人
1 | SELECT * FROM student WHERE NAME LIKE "_化%"; |
– 查询姓名是3个字的人
1 | SELECT * FROM student WHERE NAME LIKE '___'; |
– 查询姓名中包含德的人
1 | SELECT * FROM student WHERE NAME LIKE '%德%'; |
本文标题:第四部分 第二章 3.DML与DQL
文章作者:foreverSFJ
发布时间:2019-08-22 15:59:26
最后更新:2019-08-22 15:59:26
原始链接:Notes/Java/JavaWeb/02_3 DQL与DML.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明出处!
分享